A NAND flash memory is known as a nonvolatile semiconductor memory device.
In the NAND flash memory, data are simultaneously erased for each block as a set of memory cells. When erasing a block of this NAND flash memory, the threshold value moves to a deep negative value because of over-erase. If the threshold voltage of a memory cell thus deepens, the write time prolongs when data is written in this block next time. Therefore, the overall threshold value is raised by performing a simultaneous write-back operation for each block after the block is erased. Recently, however, the time of this write-back operation increases the erase time.
Also, in the NAND flash memory, a program verify operation of verifying the threshold voltage of a memory cell is performed after a write operation. It is desirable to shorten the write time of this write operation as well.